Geolocation APIの環境構築と動作検証
座標を使ったゲームを作りたいので、Geolocation APIを使ってWebサイトがデバイスの座標を取れるようにしたい。
code: geolocation.js
// ボタンを押した時の処理
document.getElementById("btn").onclick = function(){
// 位置情報を取得する
navigator.geolocation.getCurrentPosition(successCallback, errorCallback);
};
// 取得に成功した場合の処理
function successCallback(position){
// 緯度を取得し画面に表示
var latitude = position.coords.latitude;
document.getElementById("latitude").innerHTML = latitude;
// 経度を取得し画面に表示
var longitude = position.coords.longitude;
document.getElementById("longitude").innerHTML = longitude;
};
// 取得に失敗した場合の処理
function errorCallback(error){
alert("位置情報が取得できませんでした");
};
簡単なコード説明
HTML側で用意したボタンを押したとき、NavigatorオブジェクトのgeolocationプロパティであるgetCurrentPosition()が呼び出され、デバイスの現在位置を取得する。
getCurrentPosition()には位置情報取得に成功した場合の処理を行うsuccessCallback()とerrorCallback()が引数として与えられている。
successCallback()ではpositionオブジェクトのcoordsプロパティによって取得したlatitude(緯度)とlongitude(経度)をgetElementById()を使ってHTML側に投げている。
errorCallback()ではアラート文を投げている。